#include <QTextCodec>
#include <QDialog>
#include <QBoxLayout>
#include <QTextBlock>
#include "Window.h"
#include "TextMonitoring.h"





Window::Window(QWidget *parent) : QDialog(parent)
{
	QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
	// Для внутренних преобразований Qt
	QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));

	// Задали заголовок главного окна
    this->setWindowTitle(tr("Придумать имя проекту!"));

	// Создаём label's (метки)

	//Результирующее изображение
	resultLabel = new QLabel;
	resultLabel->setBackgroundRole(QPalette::Dark);
	//ResultLabel->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
	resultLabel->setScaledContents(true);

	// Создаём area's (области)

	// Область вывода результата
    resultArea = new QTextEdit;

    textBlock = new TextEditWidget(resultArea);
    textBlock->setUndoRedoEnabled(false);

    //cursor->setVisualNavigation(true);

   // QTextCursor cursor = textBlock->textCursor();
   // textCursor = new QTextCursor(textBlock);
   // textBlock->setBackgroundRole(QPalette::Dark);
   // textArea->setWidget(textLabel);


	//setCentralWidget(SourceArea);

	//SourceArea->setAlignment(Qt::AlignBottom);

	// Создаём действия для добавления в меню

	aboutAction = new QAction(tr("О программе"), this);
	exitAction = new QAction(tr("Выход"), this);




    // Создаём связки сигнал-слот

    QObject::connect(exitAction, SIGNAL(triggered()), this, SLOT(close()));

	// Создаём меню
	fileMenu = new QMenu(tr("Меню"), this);

	//Присваиваем новые действия (пункты) меню

	fileMenu->addAction(aboutAction);
	fileMenu->addSeparator();
	fileMenu->addAction(exitAction);

	//Панель меню
	menuBar = new QMenuBar(this);
	// Добавляем меню
	menuBar->addMenu(fileMenu);

	// Создаём layout's (макеты)
	// Макет меню
	menuLayout = new QHBoxLayout;
	// Добавление элементов
	menuLayout->addWidget(menuBar);

	// Макет Рабочей области
    workLayout = new QHBoxLayout;
    workLayout->addWidget(textBlock);
	workLayout->addWidget(resultArea);

	// Макет главного окна
	QVBoxLayout *mainLayout = new QVBoxLayout;
	mainLayout->addLayout(menuLayout);
	mainLayout->addLayout(workLayout);


	// Устанавливаем макет
	setLayout(mainLayout);

	// Изменяем размер главного окна
    resize(800, 400);

}



